home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Visual Cafe 3
/
Visual Cafe 3.ISO
/
Vcafe
/
Sample.bin
/
TableExample2.java
< prev
next >
Wrap
Text File
|
1998-09-28
|
6KB
|
185 lines
/*
A GUI version of TableExample2 example from Sun.
Another example of the JTable hooked to a JDBC Query
that is a bit more flexable, and allows sorting.
*/
import com.sun.java.swing.*;
import java.awt.*;
public class TableExample2 extends com.sun.java.swing.JFrame
{
public TableExample2()
{
// This code is automatically generated by Visual Cafe when you add
// components to the visual environment. It instantiates and initializes
// the components. To modify the code, only use code syntax that matches
// what Visual Cafe can generate, or Visual Cafe may be unable to back
// parse your Java file into its visual environment.
//{{INIT_CONTROLS
setTitle("Table Example 2");
getContentPane().setLayout(new BorderLayout(0,0));
getContentPane().setFont(new Font("Dialog", Font.PLAIN, 0));
setSize(405,305);
setVisible(false);
simpleJdbcTableModel1.setJdbcDriverClass("sun.jdbc.odbc.JdbcOdbcDriver");
simpleJdbcTableModel1.setQuery("select * from COFFEES");
simpleJdbcTableModel1.setPassword("sql");
simpleJdbcTableModel1.setJdbcDriverURL("jdbc:odbc:CafeJava");
simpleJdbcTableModel1.setUser("dba");
//$$ simpleJdbcTableModel1.move(0,0);
simpleSortTableModel1.setModel(simpleJdbcTableModel1);
//$$ simpleSortTableModel1.move(0,0);
JScrollPane1.setOpaque(true);
getContentPane().add("Center", JScrollPane1);
JScrollPane1.setBounds(0,0,405,305);
JTable1.setModel(simpleSortTableModel1);
JScrollPane1.getViewport().add(JTable1);
JTable1.setBounds(0,0,402,302);
JPanel1.setLayout(new BorderLayout(0,0));
getContentPane().add("North", JPanel1);
JPanel1.setBounds(0,0,405,108);
JScrollPane2.setVerticalScrollBarPolicy(com.sun.java.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
JScrollPane2.setOpaque(true);
JPanel1.add("Center", JScrollPane2);
JScrollPane2.setBounds(0,0,294,108);
query.setRows(6);
JScrollPane2.getViewport().add(query);
query.setBounds(0,0,276,105);
JPanel2.setAlignmentX(0.495495F);
JPanel2.setLayout(new BoxLayout(JPanel2,BoxLayout.Y_AXIS));
JPanel1.add("East", JPanel2);
JPanel2.setBounds(294,0,111,108);
configuration.setText("Configuration");
configuration.setActionCommand("Configuration");
configuration.setAlignmentY(0.5F);
configuration.setAlignmentX(0.5F);
JPanel2.add(configuration);
configuration.setBounds(0,0,111,25);
fetch.setText("Fetch");
fetch.setActionCommand("Fetch");
fetch.setAlignmentY(0.5F);
fetch.setAlignmentX(0.5F);
JPanel2.add(fetch);
fetch.setBounds(23,25,65,25);
//}}
simpleSortTableModel1.addMouseListenerToHeaderInTable(JTable1);
query.setText(simpleJdbcTableModel1.getQuery());
//{{INIT_MENUS
//}}
//{{REGISTER_LISTENERS
SymWindow aSymWindow = new SymWindow();
this.addWindowListener(aSymWindow);
SymAction lSymAction = new SymAction();
fetch.addActionListener(lSymAction);
configuration.addActionListener(lSymAction);
//}}
}
static public void main(String args[])
{
TableExample2 te = new TableExample2();
SimpleJdbcTableModel simpleJdbcTableModel = te.simpleJdbcTableModel1;
te.setLocation(50,50);
if(args.length != 5)
{
System.err.println("Pass database parameters eg. ...");
System.err.println("java TableExample1 \"jdbc:odbc:CafeJava\" \"sun.jdbc.odbc.JdbcOdbcDriver\" \"username\" \"password\" \"select * from COFFEES\"");
System.err.println("Bringing up configuration dialog");
te.configDialog();
}
else
{
simpleJdbcTableModel.setJdbcDriverURL(args[0]);
simpleJdbcTableModel.setJdbcDriverClass(args[1]);
simpleJdbcTableModel.setUser(args[2]);
simpleJdbcTableModel.setPassword(args[3]);
simpleJdbcTableModel.setQuery(args[4]);
te.query.setText(simpleJdbcTableModel.getQuery());
}
simpleJdbcTableModel.doQuery();
te.setVisible(true);
}
//{{DECLARE_CONTROLS
SimpleJdbcTableModel simpleJdbcTableModel1 = new SimpleJdbcTableModel();
SimpleSortTableModel simpleSortTableModel1 = new SimpleSortTableModel();
com.sun.java.swing.JScrollPane JScrollPane1 = new com.sun.java.swing.JScrollPane();
com.sun.java.swing.JTable JTable1 = new com.sun.java.swing.JTable();
com.sun.java.swing.JPanel JPanel1 = new com.sun.java.swing.JPanel();
com.sun.java.swing.JScrollPane JScrollPane2 = new com.sun.java.swing.JScrollPane();
com.sun.java.swing.JTextArea query = new com.sun.java.swing.JTextArea();
com.sun.java.swing.JPanel JPanel2 = new com.sun.java.swing.JPanel();
com.sun.java.swing.JButton configuration = new com.sun.java.swing.JButton();
com.sun.java.swing.JButton fetch = new com.sun.java.swing.JButton();
//}}
//{{DECLARE_MENUS
//}}
class SymWindow extends java.awt.event.WindowAdapter
{
public void windowClosing(java.awt.event.WindowEvent event)
{
Object object = event.getSource();
if (object == TableExample2.this)
TableExample2_windowClosing(event);
}
}
void TableExample2_windowClosing(java.awt.event.WindowEvent event)
{
System.exit(0);
}
class SymAction implements java.awt.event.ActionListener
{
public void actionPerformed(java.awt.event.ActionEvent event)
{
Object object = event.getSource();
if (object == fetch)
fetch_actionPerformed(event);
else if (object == configuration)
configuration_actionPerformed(event);
}
}
void fetch_actionPerformed(java.awt.event.ActionEvent event)
{
simpleJdbcTableModel1.setQuery(query.getText());
simpleJdbcTableModel1.doQuery();
}
void configuration_actionPerformed(java.awt.event.ActionEvent event)
{
configDialog();
}
void configDialog()
{
JdbcConfigurationDialog cfg = new JdbcConfigurationDialog(this, true);
cfg.setUser(simpleJdbcTableModel1.getUser());
cfg.setPassword(simpleJdbcTableModel1.getPassword());
cfg.setURL(simpleJdbcTableModel1.getJdbcDriverURL());
cfg.setDriver(simpleJdbcTableModel1.getJdbcDriverClass());
cfg.setQuery(simpleJdbcTableModel1.getQuery());
cfg.setVisible(true);
if (cfg.wasCanceled())
{
return;
}
simpleJdbcTableModel1.setUser(cfg.getUser());
simpleJdbcTableModel1.setPassword(cfg.getPassword());
simpleJdbcTableModel1.setJdbcDriverURL(cfg.getURL());
simpleJdbcTableModel1.setJdbcDriverClass(cfg.getDriver());
simpleJdbcTableModel1.setQuery(cfg.getQuery());
query.setText(simpleJdbcTableModel1.getQuery());
simpleJdbcTableModel1.doQuery();
}
}